<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1.chatAt 返回指定位置的字符
        // 2.concat()  合并
        // 3.indexOf() lastIndexOf() indexOf返回指定元素首次出现的位置，lastIndexOf返回元素最后一次出现的位置
        // 4.slice()    截取 返回截取后的新字符串，不改变原字符串
        // 5.split()    使用指定的分隔符将字符串转化成数组
        // 6.substr(start,end) substring(start,end) 截取指定字符串，返回截取的字符串
            // 两个方法的区别在于：substr的 end 是截取的个数；substring的 end是下标（不包含自身） 
        // 7.replace() 替换 不改变原字符串，
            // 参数一是需要替换掉的字符或者一个正则的匹配规则，参数二，需要替换进去的字符（也可是一个 回调function）
        // 8.toLowerCase() / toUpperCase() 将字母转成小写、大写
        // 9.includes()/startsWith()/endsWith() 返回boolean
            // 是否包含、是否在是首位置、是否在末位
        // 10.repeat() 返回一个新的字符串，值是重复指定次数的原字符串

        // 1.chatAt()
        let str1 = 'abcdefg'
        console.log(str1.charAt(2));//c
        console.log(str1[2]);//c
        // 2.concat
        let str2 = 'abc'
        let str2_1 = 'def'
        let concatStr = str2.concat(str2_1)
        console.log(concatStr);//abcdef
        // 3.indexOf lastIndexOf
        let str3 = 'abcdechc'
        console.log(str3.indexOf('c'));//2
        console.log(str3.lastIndexOf('c'));//7
        // 4.slice()
        let str4 = 'abcdefg'
        console.log(str4.slice(3));//defg
        console.log(str4.slice(3,4));//d
        // 5.split
        let str5 = 'a^b^c^d^e'
        console.log(str5.split('^'));//['a', 'b', 'c', 'd', 'e']
        // 6.substr/substring
        let str6 = 'abcdefghijk'
        console.log(str6.substr(1,6));//bcdefg
        console.log(str6.substring(1,6));//bcdef
        // 7.replace()
        const str7 = '2018年结束了，2019年开始了，2020年就也不远了'
        let rex = /\d+/g
        let replaceStr = str7.replace(rex,'****')
        console.log(replaceStr);    //****年结束了，****年开始了，****年就也不远了
        let replaceStr2 = str7.replace(rex,function(item){
            const arr = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']
            let newStr = ''
            item.split('').map(item=>{
                newStr += arr[item]
            })
            return newStr
        })
        console.log(replaceStr2);//贰零壹捌年结束了，贰零壹玖年开始了，贰零贰零年就也不远了
        // 8.toLowerCase() toUpperCase
        let str8 = 'ABCD'
        console.log(str8.toLowerCase());//abcd
        let str8_2 = 'abcd'
        console.log(str8_2.toUpperCase());//'ABCD'
        // 9.includes()/startsWith()/endsWith()
        let str9 = 'My name is Huang Rui Wei'
        console.log(str9.includes('Huang'));//true
        console.log(str9.startsWith('My'),str9.endsWith('Wei'));//true true
        // 10.repeat() 重复
        let str10 = 'http'
        console.log(str10.repeat(3),str10);//'httphttphttp' 'http'
    </script>
</body>
</html>